#include "keyboard.h"

uint8_t key_fast_map[17][3] = {
    {(char)' ', NULL, NULL},           // X2Y1
    {KEY_RIGHT_CTRL, (char)'s', NULL}, // X2Y2
    {KEY_RIGHT_CTRL, (char)'a', NULL}, // X2Y3
    {KEY_RIGHT_CTRL, (char)'z', NULL}, // X2Y4

    {KEY_DELETE, NULL, NULL},          // X3Y1
    {KEY_LEFT_ARROW, NULL, NULL},      // X3Y2
    {KEY_HOME, NULL, NULL},            // X3Y3
    {KEY_RIGHT_CTRL, (char)'x', NULL}, // X3Y4

    {KEY_BACKSPACE, NULL, NULL},       // X4Y1
    {KEY_DOWN_ARROW, NULL, NULL},      // X4Y2
    {KEY_UP_ARROW, NULL, NULL},        // X4Y3
    {KEY_RIGHT_CTRL, (char)'c', NULL}, // X4Y4

    {KEY_RIGHT_ARROW, NULL, NULL},     // X5Y2
    {KEY_END, NULL, NULL},             // X5Y3
    {KEY_RIGHT_CTRL, (char)'v', NULL}, // X5Y4

    {KEY_RETURN, NULL, NULL},   // X6Y3
    {KEY_BACKSPACE, NULL, NULL} // X6Y4
};

uint8_t key_num_map[17][3] = {
    {(char)'/', NULL, NULL}, // X2Y1
    {(char)'*', NULL, NULL}, // X2Y2
    {(char)'-', NULL, NULL}, // X2Y3
    {(char)'+', NULL, NULL}, // X2Y4

    {(char)'0', NULL, NULL}, // X3Y1
    {(char)'1', NULL, NULL}, // X3Y2
    {(char)'4', NULL, NULL}, // X3Y3
    {(char)'7', NULL, NULL}, // X3Y4

    {(char)'.', NULL, NULL}, // X4Y1
    {(char)'2', NULL, NULL}, // X4Y2
    {(char)'5', NULL, NULL}, // X4Y3
    {(char)'8', NULL, NULL}, // X4Y4

    {(char)'3', NULL, NULL}, // X5Y2
    {(char)'6', NULL, NULL}, // X5Y3
    {(char)'9', NULL, NULL}, // X5Y4

    {(char)'=', NULL, NULL},    // X6Y3
    {KEY_BACKSPACE, NULL, NULL} // X6Y4
};

uint8_t key_app1_map[17][3] = {
    {NULL, NULL, NULL}, // X2Y1
    {NULL, NULL, NULL}, // X2Y2
    {NULL, NULL, NULL}, // X2Y3
    {NULL, NULL, NULL}, // X2Y4

    {NULL, NULL, NULL}, // X3Y1
    {NULL, NULL, NULL}, // X3Y2
    {NULL, NULL, NULL}, // X3Y3
    {NULL, NULL, NULL}, // X3Y4

    {NULL, NULL, NULL}, // X4Y1
    {NULL, NULL, NULL}, // X4Y2
    {NULL, NULL, NULL}, // X4Y3
    {NULL, NULL, NULL}, // X4Y4

    {NULL, NULL, NULL}, // X5Y2
    {NULL, NULL, NULL}, // X5Y3
    {NULL, NULL, NULL}, // X5Y4

    {NULL, NULL, NULL}, // X6Y3
    {NULL, NULL, NULL}  // X6Y4
};

uint8_t key_game1_map[17][3] = {
    {NULL, NULL, NULL}, // X2Y1
    {NULL, NULL, NULL}, // X2Y2
    {NULL, NULL, NULL}, // X2Y3
    {NULL, NULL, NULL}, // X2Y4

    {NULL, NULL, NULL}, // X3Y1
    {NULL, NULL, NULL}, // X3Y2
    {NULL, NULL, NULL}, // X3Y3
    {NULL, NULL, NULL}, // X3Y4

    {NULL, NULL, NULL}, // X4Y1
    {NULL, NULL, NULL}, // X4Y2
    {NULL, NULL, NULL}, // X4Y3
    {NULL, NULL, NULL}, // X4Y4

    {NULL, NULL, NULL}, // X5Y2
    {NULL, NULL, NULL}, // X5Y3
    {NULL, NULL, NULL}, // X5Y4

    {NULL, NULL, NULL}, // X6Y3
    {NULL, NULL, NULL}  // X6Y4
};

uint8_t key_doub_map[17][3] = {
    {NULL, NULL, NULL}, // X2Y1
    {NULL, NULL, NULL}, // X2Y2
    {NULL, NULL, NULL}, // X2Y3
    {NULL, NULL, NULL}, // X2Y4

    {NULL, NULL, NULL},                             // X3Y1
    {KEY_LEFT_CTRL, KEY_LEFT_ALT, KEY_RIGHT_ARROW}, // X3Y2
    {NULL, NULL, NULL},                             // X3Y3
    {NULL, NULL, NULL},                             // X3Y4

    {NULL, NULL, NULL}, // X4Y1
    {NULL, NULL, NULL}, // X4Y2
    {NULL, NULL, NULL}, // X4Y3
    {NULL, NULL, NULL}, // X4Y4

    {KEY_LEFT_CTRL, KEY_LEFT_ALT, KEY_LEFT_ARROW}, // X5Y2
    {NULL, NULL, NULL},                            // X5Y3
    {NULL, NULL, NULL},                            // X5Y4

    {KEY_LEFT_CTRL, KEY_LEFT_ALT, KEY_F5}, // X6Y3
    {NULL, NULL, NULL}                     // X6Y4
};
